/*!
 * MindPlus
 * mpython
 *
 */
#include <MPython.h>
#include <DFRobot_Iot.h>
#include <MPython_ASR.h>
// 函数声明
void DF_WiFiZiDongZhongLian();
void DF_YuYanShiBieDeng();
void DF_WiFiLianJieZhuangTaiJieMian();
// 创建对象
DFRobot_Iot myIot;
MPython_ASR mpythonAsr;
String      str_mpythonAsr_result;


// 主程序开始
void setup() {
	mPython.begin();
	myIot.wifiConnect("DESKTOP-RS229GR 3737", "19990327");
	display.setCursorLine(1);
	display.printLine("正在连接到网络...");
	while (!myIot.wifiStatus()) {yield();}
	DF_WiFiLianJieZhuangTaiJieMian();
}
void loop() {
	DF_WiFiZiDongZhongLian();
	DF_YuYanShiBieDeng();
}


// 自定义函数
void DF_WiFiZiDongZhongLian() {
	if ((!myIot.wifiStatus())) {
		myIot.wifiConnect("DESKTOP-RS229GR 3737", "19990327");
		while (!myIot.wifiStatus()) {yield();}
	}
}
void DF_YuYanShiBieDeng() {
	if ((buttonA.isPressed())) {
		while (!(!buttonA.isPressed())) {yield();}
		display.fillScreen(0);
		display.setCursorLine(1);
		display.printLine("语音识别");
		str_mpythonAsr_result=mpythonAsr.getAsrResult(3);
		display.setCursorLine(2);
		display.printLine((str_mpythonAsr_result));
		if (((String(str_mpythonAsr_result).indexOf(String("开灯")) != -1))) {
			rgb.write(-1, 0x0000FF);
		}
		else if (((String(str_mpythonAsr_result).indexOf(String("关灯")) != -1))) {
			rgb.write(-1, 0x000000);
		}
	}
	else if ((buttonB.isPressed())) {
		while (!(!buttonB.isPressed())) {yield();}
		DF_WiFiLianJieZhuangTaiJieMian();
	}
}
void DF_WiFiLianJieZhuangTaiJieMian() {
	display.fillScreen(0);
	if (myIot.wifiStatus()) {
		display.setCursorLine(1);
		display.printLine("网络已连接");
	}
	else {
		display.setCursorLine(1);
		display.printLine("网络连接失败");
	}
	display.setCursorLine(2);
	display.printLine("IP地址：");
	display.setCursorLine(3);
	display.printLine(myIot.getWiFiLocalIP());
}
